<!-- HTML header for doxygen 1.8.3.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3.1"/>
<title>Sifteo SDK: Sifteo::RelocatableTileBuffer&lt; tW, tH, tF &gt; Struct Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-style-overrides.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<center>
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Sifteo SDK" src="sdk_logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">v1.0.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
</center>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Home</span></a></li>
      <li><a href="pages.html"><span>Guides</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Reference</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>Sifteo</b></li><li class="navelem"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">RelocatableTileBuffer</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="struct_sifteo_1_1_relocatable_tile_buffer-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Sifteo::RelocatableTileBuffer&lt; tW, tH, tF &gt; Struct Template Reference<div class="ingroups"><a class="el" href="group__video.html">Video</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>A drawable that's backed by plain memory, usable with multiple cubes.  
 <a href="struct_sifteo_1_1_relocatable_tile_buffer.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="tilebuffer_8h_source.html">sifteo/video/tilebuffer.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abedc46569e3b27d25b6f84436f7f7d1f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abedc46569e3b27d25b6f84436f7f7d1f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#abedc46569e3b27d25b6f84436f7f7d1f">erase</a> (uint16_t index=0)</td></tr>
<tr class="memdesc:abedc46569e3b27d25b6f84436f7f7d1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Erase the buffer, filling it with the specified relative tile index value. <br/></td></tr>
<tr class="separator:abedc46569e3b27d25b6f84436f7f7d1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2bd40aec32f535ebdd339dff23e66e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2bd40aec32f535ebdd339dff23e66e8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ae2bd40aec32f535ebdd339dff23e66e8">erase</a> (const <a class="el" href="struct_sifteo_1_1_pinned_asset_image.html">PinnedAssetImage</a> &amp;<a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#aa5f9b9207610a81611a21e457968d759">image</a>)</td></tr>
<tr class="memdesc:ae2bd40aec32f535ebdd339dff23e66e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Erase the buffer, filling it with the first tile from the specified <a class="el" href="struct_sifteo_1_1_pinned_asset_image.html" title="An AssetImage in which all tiles are stored sequentially in memory.">PinnedAssetImage</a>. <br/></td></tr>
<tr class="separator:ae2bd40aec32f535ebdd339dff23e66e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c31caf180cd4422d57b300a917d41a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a9c31caf180cd4422d57b300a917d41a4">fill</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> topLeft, <a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> size, unsigned tileIndex, unsigned frame=0)</td></tr>
<tr class="memdesc:a9c31caf180cd4422d57b300a917d41a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fill a rectangle of identical tiles, specified as a top-left corner location and a size.  <a href="#a9c31caf180cd4422d57b300a917d41a4">More...</a><br/></td></tr>
<tr class="separator:a9c31caf180cd4422d57b300a917d41a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b08a1d992a526fbc5b98cd0d11347a3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a1b08a1d992a526fbc5b98cd0d11347a3">fill</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> topLeft, <a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> size, const <a class="el" href="struct_sifteo_1_1_pinned_asset_image.html">PinnedAssetImage</a> &amp;<a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#aa5f9b9207610a81611a21e457968d759">image</a>, unsigned frame=0)</td></tr>
<tr class="memdesc:a1b08a1d992a526fbc5b98cd0d11347a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fill a rectangle of identical tiles, using the first tile of a pinned asset.  <a href="#a1b08a1d992a526fbc5b98cd0d11347a3">More...</a><br/></td></tr>
<tr class="separator:a1b08a1d992a526fbc5b98cd0d11347a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5f9b9207610a81611a21e457968d759"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#aa5f9b9207610a81611a21e457968d759">image</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> pos, const <a class="el" href="struct_sifteo_1_1_asset_image.html">AssetImage</a> &amp;image, unsigned srcFrame=0, unsigned destFrame=0)</td></tr>
<tr class="memdesc:aa5f9b9207610a81611a21e457968d759"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a full <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> frame, with its top-left corner at the specified location.  <a href="#aa5f9b9207610a81611a21e457968d759">More...</a><br/></td></tr>
<tr class="separator:aa5f9b9207610a81611a21e457968d759"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6a7e479787cb8dfbacdde940bbacac3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#aa6a7e479787cb8dfbacdde940bbacac3">image</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> destXY, <a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> size, const <a class="el" href="struct_sifteo_1_1_asset_image.html">AssetImage</a> &amp;image, <a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> srcXY, unsigned srcFrame=0, unsigned destFrame=0)</td></tr>
<tr class="memdesc:aa6a7e479787cb8dfbacdde940bbacac3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw part of an <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> frame, with its top-left corner at the specified location.  <a href="#aa6a7e479787cb8dfbacdde940bbacac3">More...</a><br/></td></tr>
<tr class="separator:aa6a7e479787cb8dfbacdde940bbacac3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f90a5913120b0e276bb419248d08f47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a1f90a5913120b0e276bb419248d08f47">init</a> ()</td></tr>
<tr class="memdesc:a1f90a5913120b0e276bb419248d08f47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html" title="A drawable that&#39;s backed by plain memory, usable with multiple cubes.">RelocatableTileBuffer</a>'s <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> header.  <a href="#a1f90a5913120b0e276bb419248d08f47">More...</a><br/></td></tr>
<tr class="separator:a1f90a5913120b0e276bb419248d08f47"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4acea990cab70474b4990e320d9efc23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4acea990cab70474b4990e320d9efc23"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a4acea990cab70474b4990e320d9efc23">operator const _SYSAssetImage &amp;</a> () const </td></tr>
<tr class="memdesc:a4acea990cab70474b4990e320d9efc23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implicit conversion to system object. <br/></td></tr>
<tr class="separator:a4acea990cab70474b4990e320d9efc23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c446b5813f53c9b9903867daa411989"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c446b5813f53c9b9903867daa411989"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a1c446b5813f53c9b9903867daa411989">operator const AssetImage &amp;</a> () const </td></tr>
<tr class="memdesc:a1c446b5813f53c9b9903867daa411989"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implicit conversion to <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> base class. <br/></td></tr>
<tr class="separator:a1c446b5813f53c9b9903867daa411989"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8fec5b4f1e4113e7a85fbfea50399a8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8fec5b4f1e4113e7a85fbfea50399a8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ad8fec5b4f1e4113e7a85fbfea50399a8">operator const FlatAssetImage &amp;</a> () const </td></tr>
<tr class="memdesc:ad8fec5b4f1e4113e7a85fbfea50399a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implicit conversion to <a class="el" href="struct_sifteo_1_1_flat_asset_image.html" title="An AssetImage in which all tile indices are stored in a flat array, without any additional compressio...">FlatAssetImage</a>. <br/></td></tr>
<tr class="separator:ad8fec5b4f1e4113e7a85fbfea50399a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6989c74e71376078b7c0a9d9f77c13b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a6989c74e71376078b7c0a9d9f77c13b7">plot</a> (unsigned i, uint16_t tileIndex)</td></tr>
<tr class="memdesc:a6989c74e71376078b7c0a9d9f77c13b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Plot a single tile, by relative tile index, at linear position 'i'.  <a href="#a6989c74e71376078b7c0a9d9f77c13b7">More...</a><br/></td></tr>
<tr class="separator:a6989c74e71376078b7c0a9d9f77c13b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa409cae80cc4a517a9f2ee5ad8d23c8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#aa409cae80cc4a517a9f2ee5ad8d23c8c">plot</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> pos, uint16_t tileIndex, unsigned frame=0)</td></tr>
<tr class="memdesc:aa409cae80cc4a517a9f2ee5ad8d23c8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Plot a single tile, by relative tile index, at location 'pos' in tile units, on the given frame.  <a href="#aa409cae80cc4a517a9f2ee5ad8d23c8c">More...</a><br/></td></tr>
<tr class="separator:aa409cae80cc4a517a9f2ee5ad8d23c8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68afef1edd95a9eddd9652c38b6132c7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68afef1edd95a9eddd9652c38b6132c7"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a68afef1edd95a9eddd9652c38b6132c7">RelocatableTileBuffer</a> ()</td></tr>
<tr class="memdesc:a68afef1edd95a9eddd9652c38b6132c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html" title="A drawable that&#39;s backed by plain memory, usable with multiple cubes.">RelocatableTileBuffer</a>. <br/></td></tr>
<tr class="separator:a68afef1edd95a9eddd9652c38b6132c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19ec083ce72ca919b4e28ae748426acf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a19ec083ce72ca919b4e28ae748426acf">setAssetGroup</a> (<a class="el" href="struct_sifteo_1_1_asset_group.html">AssetGroup</a> &amp;group)</td></tr>
<tr class="memdesc:a19ec083ce72ca919b4e28ae748426acf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the <a class="el" href="struct_sifteo_1_1_asset_group.html" title="A bundle of compressed tile data, for use by AssetImages.">AssetGroup</a> associated with this buffer.  <a href="#a19ec083ce72ca919b4e28ae748426acf">More...</a><br/></td></tr>
<tr class="separator:a19ec083ce72ca919b4e28ae748426acf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2813e823056ad37358c086f268e302d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a2813e823056ad37358c086f268e302d8">span</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> pos, unsigned width, unsigned tileIndex, unsigned frame=0)</td></tr>
<tr class="memdesc:a2813e823056ad37358c086f268e302d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Plot a horizontal span of tiles, by relative tile index, given the position of the leftmost tile and the number of tiles to plot.  <a href="#a2813e823056ad37358c086f268e302d8">More...</a><br/></td></tr>
<tr class="separator:a2813e823056ad37358c086f268e302d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0ebc5dcd0034acb371e0880a291eb2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ab0ebc5dcd0034acb371e0880a291eb2d">span</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> pos, unsigned width, const <a class="el" href="struct_sifteo_1_1_pinned_asset_image.html">PinnedAssetImage</a> &amp;<a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#aa5f9b9207610a81611a21e457968d759">image</a>, unsigned frame=0)</td></tr>
<tr class="memdesc:ab0ebc5dcd0034acb371e0880a291eb2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Plot a horizontal span of tiles, using the first tile of a pinned asset.  <a href="#ab0ebc5dcd0034acb371e0880a291eb2d">More...</a><br/></td></tr>
<tr class="separator:ab0ebc5dcd0034acb371e0880a291eb2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72b16cd54e134c98f2897035f9a2df6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a72b16cd54e134c98f2897035f9a2df6c">text</a> (<a class="el" href="group__math.html#ga4aa5e1c76d3adebd72a73a7051ad1fe0">Int2</a> topLeft, const <a class="el" href="struct_sifteo_1_1_asset_image.html">AssetImage</a> &amp;font, const char *str, unsigned destFrame=0, char firstChar= ' ')</td></tr>
<tr class="memdesc:a72b16cd54e134c98f2897035f9a2df6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw text, using an <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> as a fixed width font.  <a href="#a72b16cd54e134c98f2897035f9a2df6c">More...</a><br/></td></tr>
<tr class="separator:a72b16cd54e134c98f2897035f9a2df6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac883c88e68dfd4b290991c2801c1a855"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac883c88e68dfd4b290991c2801c1a855"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ac883c88e68dfd4b290991c2801c1a855">tile</a> (unsigned i) const </td></tr>
<tr class="memdesc:ac883c88e68dfd4b290991c2801c1a855"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the relative index of the tile at linear position 'i' in the image. <br/></td></tr>
<tr class="separator:ac883c88e68dfd4b290991c2801c1a855"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3a510868aed66fa2c9d65a54bea538b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3a510868aed66fa2c9d65a54bea538b"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ab3a510868aed66fa2c9d65a54bea538b">tile</a> (<a class="el" href="group__math.html#ga4aa5e1c76d3adebd72a73a7051ad1fe0">Int2</a> pos, unsigned frame=0) const </td></tr>
<tr class="memdesc:ab3a510868aed66fa2c9d65a54bea538b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the relative index of the tile at the specified (x, y) tile coordinates, and optionally on the specified frame number. <br/></td></tr>
<tr class="separator:ab3a510868aed66fa2c9d65a54bea538b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e063d20add1a224e08dc6afef7059ff"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a8e063d20add1a224e08dc6afef7059ff">tileAddr</a> (<a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a> pos, unsigned frame=0)</td></tr>
<tr class="memdesc:a8e063d20add1a224e08dc6afef7059ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the video buffer address of a particular tile.  <a href="#a8e063d20add1a224e08dc6afef7059ff">More...</a><br/></td></tr>
<tr class="separator:a8e063d20add1a224e08dc6afef7059ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a1fca3a62064157cf49142e8554a1830f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1fca3a62064157cf49142e8554a1830f"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a1fca3a62064157cf49142e8554a1830f">numFrames</a> ()</td></tr>
<tr class="memdesc:a1fca3a62064157cf49142e8554a1830f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of frames in this image. <br/></td></tr>
<tr class="separator:a1fca3a62064157cf49142e8554a1830f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f841784204ff7c65b208c9c043a2b0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f841784204ff7c65b208c9c043a2b0b"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a6f841784204ff7c65b208c9c043a2b0b">numTiles</a> ()</td></tr>
<tr class="memdesc:a6f841784204ff7c65b208c9c043a2b0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the total number of tiles in every frame of the image. <br/></td></tr>
<tr class="separator:a6f841784204ff7c65b208c9c043a2b0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0a3fe97a65f6692ee3c66206ccc75b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0a3fe97a65f6692ee3c66206ccc75b3"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ad0a3fe97a65f6692ee3c66206ccc75b3">numTilesPerFrame</a> ()</td></tr>
<tr class="memdesc:ad0a3fe97a65f6692ee3c66206ccc75b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of tiles in each frame of the image. <br/></td></tr>
<tr class="separator:ad0a3fe97a65f6692ee3c66206ccc75b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67ddd9895d4865cc39fa6e3268bc411e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67ddd9895d4865cc39fa6e3268bc411e"></a>
static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a67ddd9895d4865cc39fa6e3268bc411e">pixelHeight</a> ()</td></tr>
<tr class="memdesc:a67ddd9895d4865cc39fa6e3268bc411e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the height, in pixel, of this mode. <br/></td></tr>
<tr class="separator:a67ddd9895d4865cc39fa6e3268bc411e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fb811bfa95fbdbe5e6f3e44d57280af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8fb811bfa95fbdbe5e6f3e44d57280af"></a>
static <a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a8fb811bfa95fbdbe5e6f3e44d57280af">pixelSize</a> ()</td></tr>
<tr class="memdesc:a8fb811bfa95fbdbe5e6f3e44d57280af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the size of this mode as a vector, in pixels. <br/></td></tr>
<tr class="separator:a8fb811bfa95fbdbe5e6f3e44d57280af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30ee41eb962f40b5d13833bd42347a43"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30ee41eb962f40b5d13833bd42347a43"></a>
static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a30ee41eb962f40b5d13833bd42347a43">pixelWidth</a> ()</td></tr>
<tr class="memdesc:a30ee41eb962f40b5d13833bd42347a43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the width, in pixels, of this mode. <br/></td></tr>
<tr class="separator:a30ee41eb962f40b5d13833bd42347a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3eb78720e927543cc207f329620d8e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3eb78720e927543cc207f329620d8e4"></a>
static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ae3eb78720e927543cc207f329620d8e4">sizeInBytes</a> ()</td></tr>
<tr class="memdesc:ae3eb78720e927543cc207f329620d8e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of this drawable's tile data, in bytes. <br/></td></tr>
<tr class="separator:ae3eb78720e927543cc207f329620d8e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74e1b997c412645e51c6bf99f6e970a0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74e1b997c412645e51c6bf99f6e970a0"></a>
static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a74e1b997c412645e51c6bf99f6e970a0">sizeInWords</a> ()</td></tr>
<tr class="memdesc:a74e1b997c412645e51c6bf99f6e970a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of this drawable's tile data, in 16-bit words. <br/></td></tr>
<tr class="separator:a74e1b997c412645e51c6bf99f6e970a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7038e2b2cbccc2a34b53585e42f3a92"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad7038e2b2cbccc2a34b53585e42f3a92"></a>
static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#ad7038e2b2cbccc2a34b53585e42f3a92">tileHeight</a> ()</td></tr>
<tr class="memdesc:ad7038e2b2cbccc2a34b53585e42f3a92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the height, in tiles, of this mode. <br/></td></tr>
<tr class="separator:ad7038e2b2cbccc2a34b53585e42f3a92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcc34ae0aaca931fc4c5965053cce99d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abcc34ae0aaca931fc4c5965053cce99d"></a>
static <a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#abcc34ae0aaca931fc4c5965053cce99d">tileSize</a> ()</td></tr>
<tr class="memdesc:abcc34ae0aaca931fc4c5965053cce99d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the size of this mode as a vector, in tiles. <br/></td></tr>
<tr class="separator:abcc34ae0aaca931fc4c5965053cce99d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8243cdb28ff5d1159fe4efeb587bd11a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8243cdb28ff5d1159fe4efeb587bd11a"></a>
static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html#a8243cdb28ff5d1159fe4efeb587bd11a">tileWidth</a> ()</td></tr>
<tr class="memdesc:a8243cdb28ff5d1159fe4efeb587bd11a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the width, in tiles, of this mode. <br/></td></tr>
<tr class="separator:a8243cdb28ff5d1159fe4efeb587bd11a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt;<br/>
struct Sifteo::RelocatableTileBuffer&lt; tW, tH, tF &gt;</h3>

<p>A drawable that's backed by plain memory, usable with multiple cubes. </p>
<p>Template parameters specify the width and height of the buffer, in tiles, and optionally the number of frames.</p>
<p>This is a variation on <a class="el" href="struct_sifteo_1_1_tile_buffer.html" title="A drawable that&#39;s backed by plain memory, instead of by a VideoBuffer.">TileBuffer</a>, but instead of storing per-cube (already relocated) tile indices, this stores per-asset-group (relocatable) indices.</p>
<p>A <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html" title="A drawable that&#39;s backed by plain memory, usable with multiple cubes.">RelocatableTileBuffer</a> can only be used with assets from a single group, and that group must be set during initialization. But, in return, the <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html" title="A drawable that&#39;s backed by plain memory, usable with multiple cubes.">RelocatableTileBuffer</a> may be drawn to any cube that has that group installed.</p>
<p>In memory, we store a flat array of 16-bit un-relocated tile indices.</p>
<p>RelocatableTileBuffers can be used as assets. In particular, they can be freely converted to <a class="el" href="struct_sifteo_1_1_flat_asset_image.html" title="An AssetImage in which all tile indices are stored in a flat array, without any additional compressio...">FlatAssetImage</a> or <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> instances. This means you can use them to do off-screen rendering, and then draw that rendering to any other drawable.</p>
<p>Note that RelocatableTileBuffers are not POD types. The underlying <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> header we build in RAM needs to be initialized by the constructor. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a9c31caf180cd4422d57b300a917d41a4"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::fill </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>topLeft</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>tileIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>frame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fill a rectangle of identical tiles, specified as a top-left corner location and a size. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="a1b08a1d992a526fbc5b98cd0d11347a3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::fill </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>topLeft</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_sifteo_1_1_pinned_asset_image.html">PinnedAssetImage</a> &amp;&#160;</td>
          <td class="paramname"><em>image</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>frame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fill a rectangle of identical tiles, using the first tile of a pinned asset. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="aa5f9b9207610a81611a21e457968d759"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::image </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_sifteo_1_1_asset_image.html">AssetImage</a> &amp;&#160;</td>
          <td class="paramname"><em>image</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>srcFrame</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>destFrame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Draw a full <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> frame, with its top-left corner at the specified location. </p>
<p>Locations are specified in tile units, relative to the top-left of the 18x18 grid.</p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="aa6a7e479787cb8dfbacdde940bbacac3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::image </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>destXY</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_sifteo_1_1_asset_image.html">AssetImage</a> &amp;&#160;</td>
          <td class="paramname"><em>image</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>srcXY</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>srcFrame</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>destFrame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Draw part of an <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> frame, with its top-left corner at the specified location. </p>
<p>Locations are specified in tile units, relative to the top-left of the 18x18 grid.</p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="a1f90a5913120b0e276bb419248d08f47"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::init </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Initialize the <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html" title="A drawable that&#39;s backed by plain memory, usable with multiple cubes.">RelocatableTileBuffer</a>'s <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> header. </p>
<p>This resets the <a class="el" href="struct_sifteo_1_1_asset_group.html" title="A bundle of compressed tile data, for use by AssetImages.">AssetGroup</a> associated with the buffer, so it may again be used with assets from any group. The contents of the buffer are not cleared. </p>

</div>
</div>
<a class="anchor" id="a6989c74e71376078b7c0a9d9f77c13b7"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::plot </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>tileIndex</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Plot a single tile, by relative tile index, at linear position 'i'. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="aa409cae80cc4a517a9f2ee5ad8d23c8c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::plot </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>tileIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>frame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Plot a single tile, by relative tile index, at location 'pos' in tile units, on the given frame. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="a19ec083ce72ca919b4e28ae748426acf"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::setAssetGroup </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_sifteo_1_1_asset_group.html">AssetGroup</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the <a class="el" href="struct_sifteo_1_1_asset_group.html" title="A bundle of compressed tile data, for use by AssetImages.">AssetGroup</a> associated with this buffer. </p>
<p>If the same asset group is already associated, this is a no-op. </p>

</div>
</div>
<a class="anchor" id="a2813e823056ad37358c086f268e302d8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::span </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>tileIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>frame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Plot a horizontal span of tiles, by relative tile index, given the position of the leftmost tile and the number of tiles to plot. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="ab0ebc5dcd0034acb371e0880a291eb2d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::span </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_sifteo_1_1_pinned_asset_image.html">PinnedAssetImage</a> &amp;&#160;</td>
          <td class="paramname"><em>image</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>frame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Plot a horizontal span of tiles, using the first tile of a pinned asset. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<a class="anchor" id="a72b16cd54e134c98f2897035f9a2df6c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::text </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga4aa5e1c76d3adebd72a73a7051ad1fe0">Int2</a>&#160;</td>
          <td class="paramname"><em>topLeft</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_sifteo_1_1_asset_image.html">AssetImage</a> &amp;&#160;</td>
          <td class="paramname"><em>font</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>destFrame</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>firstChar</em> = <code>'&#160;'</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Draw text, using an <a class="el" href="struct_sifteo_1_1_asset_image.html" title="Any kind of asset image, as defined in your stir script.">AssetImage</a> as a fixed width font. </p>
<p>Each character is represented by a consecutive 'frame' in the image. Characters not present in the font will be skipped. </p>

</div>
</div>
<a class="anchor" id="a8e063d20add1a224e08dc6afef7059ff"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;unsigned tW, unsigned tH, unsigned tF = 1&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t <a class="el" href="struct_sifteo_1_1_relocatable_tile_buffer.html">Sifteo::RelocatableTileBuffer</a>&lt; tW, tH, tF &gt;::tileAddr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__math.html#ga2e4fcb4037bc16967e23c20126d25396">UInt2</a>&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>frame</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Calculate the video buffer address of a particular tile. </p>
<p>All coordinates must be in range. This function performs no clipping. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="tilebuffer_8h_source.html">tilebuffer.h</a></li>
</ul>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.3.1-->
<!-- start footer part -->
    <hr class="footer"/>
    <address class="footer">
        <p><a href="http://sifteo.com">Sifteo</a> SDK v1.0.0 <small>(see <a href="https://developers.sifteo.com/sifteosdk">all versions</a>)</small></p>
        <p>Last updated Wed Mar 27 2013, by <a href="http://www.stack.nl/~dimitri/doxygen">Doxygen</a></p>
    </address>
</body>
</html>
